//1导入
import Vue from 'vue'
import Vuex from 'vuex'
//2 安装
Vue.use(Vuex);
//3 创建store实例
const store = new Vuex.Store({
  state:{
    cartList:[]
  },
  mutations:{
    // addProduct(state,payload){
    //   let oldProduct=state.cartList.find(function(item){
    //     return item.iid===payload.iid;
    //   });
    //   if(oldProduct){
    //     oldProduct.count++;
    //   }else{
    //     state.cartList.push(payload);
    //   }
    // }
    addCount(state,payload){
      payload.count++;
    },
    addCart(state,payload){
      payload.ischecked=true;
      state.cartList.push(payload);
      
    },
  },
  actions:{
    addProduct(context,payload){
      return new Promise((resolve,reject)=>{
         //查询是否有该商品
      let oldProduct=context.state.cartList.find(function(item){
        return item.iid===payload.iid;
      });
      //如果有数量加一
      if(oldProduct){
        context.commit("addCount",oldProduct);
        resolve("再次添加一件")
      }else{
        //如果没有则添加
        context.commit("addCart",payload);
        resolve("新商品添加成功")

        // state.cartList.push(payload);
      }

      })
     
    }
  },
  getters:{},
  module:{}
})
//4挂载
export default store
